package com.qf.modules.sys.entity;

import com.qf.common.persistence.DataEntity;
import lombok.Data;
import lombok.ToString;

import java.util.ArrayList;
import java.util.List;

@Data
@ToString
public class Menu extends DataEntity<Menu> {
    /**
     * 父菜单Id
     */
    private String parentId;

    /**
     * 父菜单名称
     */
    private String parentName;

    /**
     * 菜单名称
     */
    private String name;

    /**
     * 菜单URL
     */
    private String url;

    /**
     * 图标
     */
    private String icon;

    /**
     * 排序
     */
    private Integer sort;

    /**
     * 是否显示 0显示 1隐藏
     */
    private String isShow;

    /**
     * 是否显示名称
     */
    private String isShowCn;

    /**
     * 类型：目录、菜单
     */
    private String type;

    /**
     * 描述
     */
    private String description;

    /**
     * 是否为叶子节点 0:否 1:是
     */
    private String isLeaf;

    /**
     * 内部编码，用于标识菜单层级
     */
    private String innerCode;

    /**
     * 子项
     */
    private List<Menu> children = new ArrayList<>();

    public String getIsShowCn() { return isShow.equals("1") ? "隐藏" : "显示"; }
}
